home *** CD-ROM | disk | FTP | other *** search
/ PC Player 2004 May / pc player 2004-05.iso / Demos / FarCry / Data1.cab / _163356ADDC5240E7B68FE25DA0BCEF2B < prev    next >
Encoding:
Text File  |  2004-01-06  |  31.5 KB  |  1,300 lines

  1. // ==============================================================================
  2. // Shader Program: General refraction effects
  3. // Description: used in refractive objects/fx's
  4. // Last Update: 07/10/2003
  5. // Coder: Tiago Sousa
  6. //
  7. // Todo: make low/med spec shaders versions
  8. //
  9. // Copyright (c) 2002 Crytek Studios
  10. // ==============================================================================
  11.  
  12. Version (1.00)
  13.  
  14.  
  15. Shader 'TemplRefrEnvTex'
  16. (
  17.   Params
  18.   {
  19.     Sort = glare //SeeThrough
  20.   }
  21.   Public
  22.   (
  23.     float 'Refraction' (0.01)
  24.   )
  25.  
  26.   HW
  27.   (
  28.     Conditions
  29.     {
  30.       AlphaBlended
  31.     }
  32.  
  33.     ShadeLayer
  34.     (
  35.       CGVProgram = CGVProgProjectTex
  36.       CGVPParam ( Name = Constants Comp=1 Comp=0.5 User 'Refraction')
  37.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  38.  
  39.       CGPShader = CGRCAmbient_AlphaConst
  40.       CGPSParam ( Name = Ambient Comp=1 Comp=1 Comp=1 Comp 'Opacity' )
  41.       
  42.       Layer '0'
  43.       (
  44.         Map =  $ScreenTexMap
  45.         TexGen = Base
  46.         TexColorOp = NoSet
  47.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  48.       )
  49.     )
  50.   )
  51.  
  52.   HW
  53.   (
  54.     ShadeLayer
  55.     (
  56.       CGVProgram = CGVProgProjectTex
  57.       CGVPParam ( Name = Constants Comp=1 Comp=0.5 User 'Refraction')
  58.       Layer '0'
  59.       (
  60.         Map =  $ScreenTexMap
  61.         TexGen = Base
  62.         TexColorOp = Replace
  63.       )
  64.     )
  65.   )
  66. )
  67.  
  68. // tiago: mutant refraction shader
  69. Shader 'MutantStealth'
  70. (  
  71.   Public
  72.   (
  73.     float 'Refraction' (0.0)
  74.     float 'TillingX'    (0.2)
  75.     float 'TillingY'    (0.5)
  76.   )
  77.   
  78.   Params
  79.   (
  80.     Sort = Glare
  81.   )
  82.  
  83.   HW
  84.   (
  85.     ShadeLayer
  86.     (
  87.       Array (Verts 3 FLOAT Vertex)
  88.       
  89.       CGVProgram = CGVProgProjectTex
  90.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  91.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  92.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.00' Comp 'time 0.0' Comp = 0.5) 
  93.       CGVPParam ( Name = Constants User 'TillingX' User 'TillingY' Comp=0.0 Comp=0.0)
  94.  
  95.       CGPShader = CGRCAmbient_AlphaConst
  96.       CGPSParam ( Name = Matrix User 'Refraction' Comp = 0 Comp = 0 User 'Refraction' )
  97.  
  98.       Layer '0'
  99.       (
  100.         Map =  waterbump.dds
  101.             TexColorOp = NoSet
  102.         TexType = DSDTBump
  103.       )
  104.  
  105.       Layer '1'
  106.       (
  107.         Map =  $ScreenTexMap
  108.         TexColorOp = NoSet
  109.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  110.         DepthWrite = 1
  111.       )
  112.     )
  113.   )
  114. )
  115.  
  116. // tiago: mutant refraction shader for low-spec machines
  117. Shader 'MutantStealth_FP'
  118. (  
  119.   Public
  120.   (
  121.     float 'Refraction' (0.0)
  122.   )
  123.   
  124.   Params
  125.   (
  126.     Sort = HeatVision
  127.   )
  128.  
  129.   HW
  130.   (
  131.     ShadeLayer
  132.     (
  133.       Array (Verts 3 FLOAT Vertex)
  134.       Array (Texture0 2 Float Texture0)
  135.                   
  136.       Layer '0'
  137.       (
  138.         Map =  $Diffuse
  139.                 
  140.             RgbGen 'Comp' { User 'Refraction' User 'Refraction' User 'Refraction' Comp = 1 }
  141.             
  142.         TexColorOp = Modulate4x
  143.         TexColorArg0 = Texture
  144.         TexColorArg1 = Constant
  145.         Blend 'ONE ONE'            
  146.       )
  147.     )
  148.   )
  149. )
  150.  
  151. // tiago: invulnerability test shader..
  152. Shader 'CharacterInvulnerability_Plasma'
  153. (
  154.   Public
  155.   ( 
  156.     float 'PlasmaAmount' (1.0)
  157.        
  158.     float 'PlasmaBumpAmountX' (0.1)
  159.     float 'PlasmaBumpAmountY' (0.1)
  160.     
  161.     float 'PlasmaTillingAmountX' (0.3)
  162.     float 'PlasmaTillingAmountY' (0.1)
  163.     
  164.     float 'PlasmaMoveSpeedX' (0.0)
  165.     float 'PlasmaMoveSpeedY' (0.0)
  166.     
  167.     float 'PlasmaColorR' (1.0)
  168.     float 'PlasmaColorG' (0.0)
  169.     float 'PlasmaColorB' (0.0)
  170.   )
  171.   
  172.   HW
  173.   (
  174.     ShadeLayer
  175.     (
  176.       Array (Verts 3 FLOAT Vertex)
  177.       
  178.       CGVProgram  = CGVProgInvulnerability
  179.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  180.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.00' Comp 'time -0.05' Comp = 0.5) 
  181.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  182.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  183.       CGVPParam ( Name = TexDetailScale User 'PlasmaTillingAmountX' User 'PlasmaTillingAmountY')
  184.       
  185.       CGPShader   = CGRCInvulnerability
  186.       CGPSParam ( Name = Matrix User 'PlasmaBumpAmountX' Comp = 0 Comp = 0 User 'PlasmaBumpAmountY' )
  187.       CGPSParam ( Name = Amount User 'PlasmaColorR' User 'PlasmaColorG' User 'PlasmaColorB' User 'PlasmaAmount' )
  188.       
  189.       Layer '0'
  190.       (
  191.         Map =  WaterBump.dds
  192.         TexColorOp = NoSet
  193.         TexType = DSDTBump
  194.       )   
  195.       
  196.       Layer '1'
  197.       (
  198.         Map =  water_lm.dds        
  199.         TexColorOp = NoSet        
  200.         Blend 'ONE ONE'
  201.       )
  202.     )
  203.   )
  204. )
  205.  
  206. // tiago: invulnerability test shader..
  207. Shader 'CharacterInvulnerability_Metal'
  208. (
  209.   Public
  210.   ( 
  211.     float 'MetalAmount' (1.0)
  212.            
  213.     float 'MetalColorR' (1.0)
  214.     float 'MetalColorG' (0.0)
  215.     float 'MetalColorB' (0.0)
  216.     
  217.     float 'MetalBumpAmountX' (0.5)
  218.     float 'MetalBumpAmountY' (0.5)
  219.   )
  220.   
  221.   HW
  222.   (
  223.   
  224.     Array (Verts 3 FLOAT Vertex)
  225.     Array (Normal FLOAT Normals)
  226.     
  227.     ShadeLayer
  228.     (
  229.       Array (Verts 3 FLOAT Vertex)
  230.       
  231.       CGVProgram  = CGVProgInvulnerabilityMetal
  232.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  233.  
  234.       CGPShader   = CGRCInvulnerabilityMetal      
  235.       CGPSParam ( Name = Matrix User 'MetalBumpAmountX' Comp = 0 Comp = 0 User 'MetalBumpAmountY' )
  236.       CGPSParam ( Name = Ambient Comp 'WorldObjColor[0]'  Comp 'WorldObjColor[1]' Comp 'WorldObjColor[2]' Comp =1 )
  237.       CGPSParam ( Name = Amount User 'MetalColorR' User 'MetalColorG' User 'MetalColorB' User 'MetalAmount' )
  238.  
  239.       Layer '0'
  240.       (
  241.         Map = $Bump
  242.         TexColorOp = NoSet    
  243.         TexType = DSDTBump    
  244.       )              
  245.       
  246.       Layer '1'
  247.       (
  248.         Map =  water_lm.dds        
  249.         TexColorOp = NoSet        
  250.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  251.         DepthWrite = 1
  252.       )
  253.     )
  254.   )  
  255. )
  256.  
  257. // tiago: particles heat haze test shader..
  258. Shader 'ParticleHeatHaze'
  259. (
  260.   Public
  261.   ( 
  262.     float 'HeatAmount' (1.0)
  263.        
  264.     float 'HeatBumpAmountX' (0.01)
  265.     float 'HeatBumpAmountY' (0.01)
  266.     
  267.     float 'HeatTillingAmountX' (0.05)
  268.     float 'HeatTillingAmountY' (0.05)
  269.     
  270.     float 'HeatMoveSpeedX' (0.0)
  271.     float 'HeatMoveSpeedY' (0.0)
  272.     
  273.     float 'ColorR' (1.0)
  274.     float 'ColorG' (1.0)
  275.     float 'ColorB' (1.0)   
  276.   )
  277.   
  278.   Params
  279.   (
  280.     Sort = Glare
  281.   )
  282.     
  283.   HW 'Seq'
  284.   (
  285.     Conditions
  286.     {
  287.       Vars
  288.       {
  289.         r_HeatHaze = 1
  290.       }
  291.     }
  292.     
  293.     ShadeLayer
  294.     (
  295.       Array (Verts 3 FLOAT Vertex)
  296.       Array (Texture0 2 FLOAT Texture0)    
  297.       Array (Color 4 BYTE Color)
  298.       
  299.       CGVProgram  = CGVProgHeatHaze
  300.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  301.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  302.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.001' Comp 'time -0.001' Comp = 0.5) 
  303.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  304.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  305.       CGVPParam ( Name = TexDetailScale User 'HeatTillingAmountX' User 'HeatTillingAmountY' Comp = 0 Comp = 0)
  306.       CGVPParam ( Name = TexMovSpeed User 'HeatMoveSpeedX' User 'HeatMoveSpeedY' Comp = 0 Comp = 0)
  307.       
  308.       CGPShader   = CGRCHeatHaze
  309.       CGPSParam ( Name = Matrix User 'HeatBumpAmountX' Comp = 0 Comp = 0 User 'HeatBumpAmountY' )
  310.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'HeatAmount' )
  311.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User '1')      
  312.        
  313.       Layer '0'
  314.       (
  315.         Map =  haze_mask.dds
  316.         TexColorOp = NoSet        
  317.       )       
  318.               
  319.       Layer '1'
  320.       (
  321.         Map =  WaterBump.dds
  322.         TexColorOp = NoSet
  323.         TexType = DSDTBump
  324.       )   
  325.       
  326.       Layer '2'
  327.       (        
  328.         Map =  $ScreenTexMap
  329.         TexColorOp = NoSet                
  330.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  331.         DepthWrite = 0
  332.       )            
  333.     )
  334.   )
  335.   
  336.   HW 'Seq'
  337.   (
  338.   
  339.   )
  340. )
  341.  
  342.  
  343. // tiago: particles heat haze test shader..
  344. Shader 'ParticleMinHeatHaze'
  345. (
  346.   Public
  347.   ( 
  348.     float 'HeatAmount' (1.0)
  349.        
  350.     float 'HeatBumpAmountX' (0.01)
  351.     float 'HeatBumpAmountY' (0.01)
  352.     
  353.     float 'HeatTillingAmountX' (0.05)
  354.     float 'HeatTillingAmountY' (0.05)
  355.     
  356.     float 'HeatMoveSpeedX' (0.0)
  357.     float 'HeatMoveSpeedY' (0.0)
  358.     
  359.     float 'ColorR' (1.0)
  360.     float 'ColorG' (1.0)
  361.     float 'ColorB' (1.0)   
  362.   )
  363.   
  364.   Params
  365.   (
  366.     Sort = HeatVision
  367.   )
  368.  
  369.   HW 'Seq'
  370.   (
  371.     Conditions
  372.     {
  373.       Vars
  374.       {
  375.         r_HeatHaze = 1
  376.       }
  377.     }
  378.       
  379.     ShadeLayer
  380.     (
  381.       Array (Verts 3 FLOAT Vertex)
  382.       Array (Texture0 2 FLOAT Texture0)    
  383.       Array (Color 4 BYTE Color)
  384.  
  385.       CGVProgram  = CGVProgHeatHaze
  386.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  387.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  388.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.001' Comp 'time -0.001' Comp = 0.5) 
  389.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  390.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  391.       CGVPParam ( Name = TexDetailScale User 'HeatTillingAmountX' User 'HeatTillingAmountY' Comp = 0 Comp = 0)
  392.       CGVPParam ( Name = TexMovSpeed User 'HeatMoveSpeedX' User 'HeatMoveSpeedY' Comp = 0 Comp = 0)
  393.       
  394.       CGPShader   = CGRCHeatHaze
  395.       CGPSParam ( Name = Matrix User 'HeatBumpAmountX' Comp = 0 Comp = 0 User 'HeatBumpAmountY' )
  396.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'HeatAmount' )
  397.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User '1')
  398.        
  399.       Layer '0'
  400.       (
  401.         Map =  haze_mask.dds
  402.         TexColorOp = NoSet
  403.       )
  404.  
  405.       Layer '1'
  406.       (
  407.         Map =  WaterBump.dds
  408.         TexColorOp = NoSet
  409.         TexType = DSDTBump
  410.       )
  411.  
  412.       Layer '2'
  413.       (
  414.         Map =  $ScreenTexMap
  415.         TexColorOp = NoSet
  416.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  417.         DepthWrite = 0
  418.       )
  419.     )
  420.   )   
  421.   
  422.   HW 'Seq'
  423.   (
  424.   
  425.   )
  426. )
  427.  
  428. // tiago: particles heat haze test shader..
  429. Shader 'ParticleMedHeatHaze'
  430. (
  431.   Public
  432.   (
  433.     float 'HeatAmount' (1.0)
  434.  
  435.     float 'HeatBumpAmountX' (0.02)
  436.     float 'HeatBumpAmountY' (0.02)
  437.  
  438.     float 'HeatTillingAmountX' (0.05)
  439.     float 'HeatTillingAmountY' (0.05)
  440.  
  441.     float 'HeatMoveSpeedX' (0.0)
  442.     float 'HeatMoveSpeedY' (0.0)
  443.  
  444.     float 'ColorR' (1.0)
  445.     float 'ColorG' (1.0)
  446.     float 'ColorB' (1.0)
  447.   )
  448.  
  449.   Params
  450.   (
  451.     Sort = HeatVision
  452.   )
  453.  
  454.   HW 'Seq'
  455.   (
  456.     Conditions
  457.     {
  458.       Vars
  459.       {
  460.         r_HeatHaze = 1
  461.       }
  462.     }
  463.       
  464.     ShadeLayer
  465.     (
  466.       Array (Verts 3 FLOAT Vertex)
  467.       Array (Texture0 2 FLOAT Texture0)    
  468.       Array (Color 4 BYTE Color)
  469.  
  470.       CGVProgram  = CGVProgHeatHaze
  471.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  472.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  473.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.001' Comp 'time -0.001' Comp = 0.5) 
  474.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  475.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  476.       CGVPParam ( Name = TexDetailScale User 'HeatTillingAmountX' User 'HeatTillingAmountY' Comp = 0 Comp = 0)
  477.       CGVPParam ( Name = TexMovSpeed User 'HeatMoveSpeedX' User 'HeatMoveSpeedY' Comp = 0 Comp = 0)
  478.  
  479.       CGPShader   = CGRCHeatHaze
  480.       CGPSParam ( Name = Matrix User 'HeatBumpAmountX' Comp = 0 Comp = 0 User 'HeatBumpAmountY' )
  481.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'HeatAmount' )
  482.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User '1')
  483.  
  484.       Layer '0'
  485.       (
  486.         Map =  haze_mask.dds
  487.         TexColorOp = NoSet
  488.       )
  489.  
  490.       Layer '1'
  491.       (
  492.         Map =  WaterBump.dds
  493.         TexColorOp = NoSet
  494.         TexType = DSDTBump
  495.       )
  496.  
  497.       Layer '2'
  498.       (
  499.         Map =  $ScreenTexMap
  500.         TexColorOp = NoSet
  501.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  502.         DepthWrite = 0
  503.       )
  504.     )
  505.   )
  506.   
  507.   HW 'Seq'
  508.   (
  509.   
  510.   )
  511. )
  512.  
  513. // tiago: particles heat haze test shader..
  514. Shader 'ParticleMaxHeatHaze'
  515. (
  516.   Public
  517.   ( 
  518.     float 'HeatAmount' (1.0)
  519.  
  520.     float 'HeatBumpAmountX' (0.03)
  521.     float 'HeatBumpAmountY' (0.03)
  522.  
  523.     float 'HeatTillingAmountX' (0.05)
  524.     float 'HeatTillingAmountY' (0.05)
  525.  
  526.     float 'HeatMoveSpeedX' (0.0)
  527.     float 'HeatMoveSpeedY' (0.0)
  528.  
  529.     float 'ColorR' (1.0)
  530.     float 'ColorG' (1.0)
  531.     float 'ColorB' (1.0)
  532.   )
  533.  
  534.   Params
  535.   (
  536.     Sort = HeatVision
  537.   )
  538.  
  539.   HW 'Seq'
  540.   (
  541.     Conditions
  542.     {
  543.       Vars
  544.       {
  545.         r_HeatHaze = 1
  546.       }
  547.     }
  548.     
  549.     ShadeLayer
  550.     (
  551.       Array (Verts 3 FLOAT Vertex)
  552.       Array (Texture0 2 FLOAT Texture0)    
  553.       Array (Color 4 BYTE Color)
  554.       
  555.       CGVProgram  = CGVProgHeatHaze
  556.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  557.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  558.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.00' Comp 'time -0.001' Comp = 0.5) 
  559.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  560.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  561.       CGVPParam ( Name = TexDetailScale User 'HeatTillingAmountX' User 'HeatTillingAmountY' Comp = 0 Comp = 0)
  562.       CGVPParam ( Name = TexMovSpeed User 'HeatMoveSpeedX' User 'HeatMoveSpeedY' Comp = 0 Comp = 0)
  563.  
  564.       CGPShader   = CGRCHeatHaze
  565.       CGPSParam ( Name = Matrix User 'HeatBumpAmountX' Comp = 0 Comp = 0 User 'HeatBumpAmountY' )
  566.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'HeatAmount' )
  567.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User '1')
  568.  
  569.       Layer '0'
  570.       (
  571.         Map =  haze_mask.dds
  572.         TexColorOp = NoSet
  573.       )
  574.  
  575.       Layer '1'
  576.       (
  577.         Map =  WaterBump.dds
  578.         TexColorOp = NoSet
  579.         TexType = DSDTBump
  580.       )
  581.  
  582.       Layer '2'
  583.       (
  584.         Map =  $ScreenTexMap
  585.         TexColorOp = NoSet
  586.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  587.         DepthWrite = 0
  588.       )
  589.     )
  590.   )
  591.   
  592.   HW 'Seq'
  593.   (
  594.   
  595.   )
  596. )
  597.  
  598. // tiago: mutant 'morphing' shader
  599. Shader 'MutantMorph'
  600. (
  601.   Public
  602.   ( 
  603.     float 'HeatAmount' (0.1)
  604.  
  605.     float 'HeatBumpAmountX' (0.06)
  606.     float 'HeatBumpAmountY' (0.06)
  607.  
  608.     float 'HeatTillingAmountX' (0.04)
  609.     float 'HeatTillingAmountY' (0.04)
  610.  
  611.     float 'HeatMoveSpeedX' (0.2)
  612.     float 'HeatMoveSpeedY' (0.2)
  613.  
  614.     float 'ColorR' (1.0)
  615.     float 'ColorG' (1.0)
  616.     float 'ColorB' (1.0)
  617.   )
  618.  
  619.   Params
  620.   (
  621.     Sort = Glare
  622.   )
  623.  
  624.   HW 'Seq'
  625.   (
  626.     Conditions
  627.     {
  628.       Vars
  629.       {
  630.         r_HeatHaze = 1
  631.       }
  632.     }
  633.     
  634.     ShadeLayer
  635.     (
  636.       Array (Verts 3 FLOAT Vertex)
  637.       Array (Texture0 2 FLOAT Texture0)    
  638.       Array (Color 4 BYTE Color)
  639.       
  640.       CGVProgram  = CGVProgHeatHaze
  641.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  642.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  643.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.00' Comp 'time -0.001' Comp = 0.5) 
  644.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  645.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  646.       CGVPParam ( Name = TexDetailScale User 'HeatTillingAmountX' User 'HeatTillingAmountY' Comp = 0 Comp = 0)
  647.       CGVPParam ( Name = TexMovSpeed User 'HeatMoveSpeedX' User 'HeatMoveSpeedY' Comp = 0 Comp = 0)
  648.  
  649.       CGPShader   = CGRCHeatHaze
  650.       CGPSParam ( Name = Matrix User 'HeatBumpAmountX' Comp = 0 Comp = 0 User 'HeatBumpAmountY' )
  651.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'HeatAmount' )
  652.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User '1')
  653.  
  654.       Layer '0'
  655.       (
  656.         Map =  haze_mask.dds
  657.         TexColorOp = NoSet
  658.       )
  659.  
  660.       Layer '1'
  661.       (
  662.         Map =  WaterBump.dds
  663.         TexColorOp = NoSet
  664.         TexType = DSDTBump
  665.       )
  666.  
  667.       Layer '2'
  668.       (
  669.         Map =  $ScreenTexMap
  670.         TexColorOp = NoSet
  671.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  672.         DepthWrite = 0
  673.       )
  674.     )
  675.   )
  676.   
  677.   HW 'Seq'
  678.   (
  679.   
  680.   )
  681. )
  682.  
  683. // tiago: mutant refraction shader for low-spec machines
  684. Shader 'MutantMorph_FP'
  685. (  
  686.   Public
  687.   (
  688.     float 'Refraction' (0.0)
  689.   )
  690.   
  691.   Params
  692.   (
  693.     Sort = HeatVision
  694.   )
  695.  
  696.   HW
  697.   (
  698.     ShadeLayer
  699.     (
  700.       Array (Verts 3 FLOAT Vertex)
  701.       Array (Texture0 2 Float Texture0)
  702.                   
  703.       Layer '0'
  704.       (
  705.         Map =  $Diffuse
  706.                 
  707.             RgbGen 'Comp' { User 'Refraction' User 'Refraction' User 'Refraction' Comp = 1 }
  708.             
  709.         TexColorOp = Modulate4x
  710.         TexColorArg0 = Texture
  711.         TexColorArg1 = Constant
  712.         Blend 'ONE ONE'            
  713.       )
  714.     )
  715.   )
  716. )
  717.  
  718.  
  719. // scope refraction fx's  
  720. Shader 'AG36ScopeRefraction'
  721. (
  722.   Public
  723.   (
  724.     float 'RefractionAmount' (1.0)
  725.     float 'BumpAmountX' (0.05)
  726.     float 'BumpAmountY' (0.05)
  727.  
  728.     float 'ColorR' (0.3)
  729.     float 'ColorG' (0.6)
  730.     float 'ColorB' (0.8)
  731.     
  732.     //AG36 0.48, 0.23, 4    
  733.     float 'OffsetX' (0.48)
  734.     float 'OffsetY' (0.23)
  735.     float 'Scale' (4.0)
  736.   )
  737.  
  738.   Params
  739.   {
  740.     Sort = Glare
  741.   }
  742.   
  743.   HW 'Seq'
  744.   (    
  745.     Conditions
  746.     {
  747.       Vars
  748.       {
  749.         r_scopelens_fx = 1
  750.       }
  751.     }
  752.         
  753.     ShadeLayer
  754.     (
  755.       Array (Verts 3 FLOAT Vertex)
  756.       Array (Texture0 2 FLOAT Texture0)
  757.             
  758.       CGVProgram  = CGVProgScopeLens
  759.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  760.       CGVPParam ( Name = LensParams User 'OffsetX' User 'OffsetY' User 'Scale' Comp = 0)
  761.  
  762.       CGPShader   = CGRCScopeLens
  763.       CGPSParam ( Name = Matrix User 'BumpAmountX' Comp = 0 Comp = 0 User 'BumpAmountY' )
  764.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'RefractionAmount' )
  765.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp = 0)
  766.  
  767.       // have to load texture directly....
  768.       Layer '0'
  769.       (
  770.         Map = AG36_scope_bump     
  771.         TexType = DSDTBump        
  772.       )
  773.  
  774.       Layer '1'
  775.       (        
  776.         Map =  $ScreenTexMap
  777.         TexColorOp = NoSet
  778.       )    
  779.             
  780.       Layer '2'
  781.       (
  782.         Map = AG36_scope_bump     
  783.         TexColorOp = NoSet        
  784.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'        
  785.         DepthWrite=0           
  786.       )      
  787.     )
  788.   )
  789.   
  790.   // low spec shader
  791.   HW 'Seq'
  792.   (  
  793.               
  794.   )  
  795. )
  796.  
  797. // scope refraction fx's  
  798. Shader 'RLScopeRefraction'
  799. (
  800.   Public
  801.   (
  802.     float 'RefractionAmount' (1.0)
  803.     float 'BumpAmountX' (0.05)
  804.     float 'BumpAmountY' (0.05)
  805.  
  806.     float 'ColorR' (0.3)
  807.     float 'ColorG' (0.6)
  808.     float 'ColorB' (0.8)
  809.         
  810.     //RL 0.27, 0.25, 2  
  811.     float 'OffsetX' (0.27)
  812.     float 'OffsetY' (0.25)
  813.     float 'Scale' (2.0)
  814.   )
  815.  
  816.   Params
  817.   {
  818.     Sort = Glare
  819.   }
  820.   
  821.   HW 'Seq'
  822.   (
  823.     Conditions
  824.     {
  825.       Vars
  826.       {
  827.         r_scopelens_fx = 1
  828.       }
  829.     }
  830.  
  831.     ShadeLayer
  832.     (
  833.       Array (Verts 3 FLOAT Vertex)
  834.       Array (Texture0 2 FLOAT Texture0)
  835.             
  836.       CGVProgram  = CGVProgScopeLens
  837.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  838.       CGVPParam ( Name = LensParams User 'OffsetX' User 'OffsetY' User 'Scale' Comp = 0)
  839.  
  840.       CGPShader   = CGRCScopeLens
  841.       CGPSParam ( Name = Matrix User 'BumpAmountX' Comp = 0 Comp = 0 User 'BumpAmountY' )
  842.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'RefractionAmount' )
  843.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp = 0)
  844.  
  845.       // have to load texture directly....
  846.       Layer '0'
  847.       (
  848.         Map = rl_scope_bump       
  849.         TexType = DSDTBump        
  850.       )
  851.  
  852.       Layer '1'
  853.       (        
  854.         Map =  $ScreenTexMap
  855.         TexColorOp = NoSet
  856.       )    
  857.       
  858.       Layer '2'
  859.       (
  860.         Map = rl_scope_bump
  861.         TexColorOp = NoSet        
  862.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'        
  863.         DepthWrite=0           
  864.       )      
  865.     )
  866.   )
  867.   
  868.   // low spec shader
  869.   HW 'Seq'
  870.   (  
  871.               
  872.   )  
  873. )
  874.  
  875. // scope refraction fx's  
  876. Shader 'AW50ScopeRefraction'
  877. (
  878.   Public
  879.   (
  880.     float 'RefractionAmount' (1.0)
  881.     float 'BumpAmountX' (0.05)
  882.     float 'BumpAmountY' (0.05)
  883.  
  884.     float 'ColorR' (0.3)
  885.     float 'ColorG' (0.6)
  886.     float 'ColorB' (0.8)
  887.         
  888.     //AW50 0.47, 0.32, 1
  889.     float 'OffsetX' (0.47)
  890.     float 'OffsetY' (0.32)
  891.     float 'Scale' (1.0)
  892.   )
  893.  
  894.   Params
  895.   {
  896.     Sort = Glare
  897.   }
  898.   
  899.   HW 'Seq'
  900.   (
  901.     Conditions
  902.     {
  903.       Vars
  904.       {
  905.         r_scopelens_fx = 1
  906.       }
  907.     }
  908.  
  909.     ShadeLayer
  910.     (
  911.       Array (Verts 3 FLOAT Vertex)
  912.       Array (Texture0 2 FLOAT Texture0)
  913.             
  914.       CGVProgram  = CGVProgScopeLens
  915.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  916.       CGVPParam ( Name = LensParams User 'OffsetX' User 'OffsetY' User 'Scale' Comp = 0)
  917.  
  918.       CGPShader   = CGRCScopeLens
  919.       CGPSParam ( Name = Matrix User 'BumpAmountX' Comp = 0 Comp = 0 User 'BumpAmountY' )
  920.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'RefractionAmount' )
  921.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp = 0)
  922.  
  923.       // have to load texture directly....
  924.       Layer '0'
  925.       (
  926.         Map = aw50_scope_bump
  927.         TexType = DSDTBump        
  928.       )
  929.  
  930.       Layer '1'
  931.       (        
  932.         Map =  $ScreenTexMap
  933.         TexColorOp = NoSet
  934.       )    
  935.       
  936.       Layer '2'
  937.       (
  938.         Map = aw50_scope_bump
  939.         TexColorOp = NoSet        
  940.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'        
  941.         DepthWrite=0           
  942.       )      
  943.     )
  944.   )
  945.   
  946.   // low spec shader
  947.   HW 'Seq'
  948.   (  
  949.               
  950.   )  
  951. )
  952.  
  953. // scope refraction fx's  
  954. Shader 'OICWScopeRefraction'
  955. (
  956.   Public
  957.   (
  958.     float 'RefractionAmount' (1.0)
  959.     float 'BumpAmountX' (0.05)
  960.     float 'BumpAmountY' (0.05)
  961.  
  962.     float 'ColorR' (0.3)
  963.     float 'ColorG' (0.6)
  964.     float 'ColorB' (0.8)
  965.     
  966.     //OICW 0.43, 0.2, 3.0
  967.     float 'OffsetX' (0.43)
  968.     float 'OffsetY' (0.2)
  969.     float 'Scale' (2.0)
  970.   )
  971.  
  972.   Params
  973.   {
  974.     Sort = Glare
  975.     
  976.   }
  977.   
  978.   HW 'Seq'
  979.   (    
  980.     Conditions
  981.     {
  982.       Vars
  983.       {
  984.         r_scopelens_fx = 1
  985.       }
  986.     }
  987.         
  988.     ShadeLayer
  989.     (
  990.       Array (Verts 3 FLOAT Vertex)
  991.       Array (Texture0 2 FLOAT Texture0)
  992.             
  993.       CGVProgram  = CGVProgScopeLens
  994.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  995.       CGVPParam ( Name = LensParams User 'OffsetX' User 'OffsetY' User 'Scale' Comp = 0)
  996.  
  997.       CGPShader   = CGRCScopeLens
  998.       CGPSParam ( Name = Matrix User 'BumpAmountX' Comp = 0 Comp = 0 User 'BumpAmountY' )
  999.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'RefractionAmount' )
  1000.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp = 0)
  1001.  
  1002.       // have to load texture directly....
  1003.       Layer '0'
  1004.       (
  1005.         Map = OICW_scope_bump     
  1006.         TexType = DSDTBump        
  1007.       )
  1008.  
  1009.       Layer '1'
  1010.       (        
  1011.         Map =  $ScreenTexMap
  1012.         TexColorOp = NoSet
  1013.       )    
  1014.             
  1015.       Layer '2'
  1016.       (
  1017.         Map = OICW_scope_bump     
  1018.         TexColorOp = NoSet        
  1019.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'        
  1020.         DepthWrite=0           
  1021.       )      
  1022.     )
  1023.   )
  1024.   
  1025.   // low spec shader
  1026.   HW 'Seq'
  1027.   (  
  1028.               
  1029.   )  
  1030. )
  1031.  
  1032. Shader 'ScopeRefraction'
  1033. (
  1034.   Public
  1035.   (
  1036.     float 'RefractionAmount' (1.0)
  1037.     float 'BumpAmountX' (0.05)
  1038.     float 'BumpAmountY' (0.05)
  1039.  
  1040.     float 'ColorR' (0.0)
  1041.     float 'ColorG' (1.0)
  1042.     float 'ColorB' (0.0)
  1043.     
  1044.     //AG36 0.48, 0.23, 4    
  1045.     float 'OffsetX' (0.48)
  1046.     float 'OffsetY' (0.23)
  1047.     float 'Scale' (4.0)    
  1048.   )
  1049.   
  1050.   Params
  1051.   {
  1052.     Sort = HeatVision
  1053.   }
  1054.  
  1055.   HW 'Seq'
  1056.   (    
  1057.     Conditions
  1058.     {
  1059.       Vars
  1060.       {
  1061.         r_scopelens_fx = 1
  1062.       }
  1063.     }
  1064.     
  1065.     ShadeLayer
  1066.     (
  1067.       Array (Verts 3 FLOAT Vertex)
  1068.       Array (Texture0 2 FLOAT Texture0)
  1069.             
  1070.       CGVProgram  = CGVProgGeomRefraction
  1071.       CGVPParam ( Name = ScreenSize Comp 'ScreenSize pos 0' Comp 'ScreenSize pos 1' Comp = 0 Comp = 0)
  1072.       CGVPParam ( Name = LensParams User 'OffsetX' User 'OffsetY' User 'Scale' Comp = 0)
  1073.  
  1074.       CGPShader   = CGRCGeomRefraction
  1075.       CGPSParam ( Name = Matrix User 'BumpAmountX' Comp = 0 Comp = 0 User 'BumpAmountY' )
  1076.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'RefractionAmount' )
  1077.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp = 0)
  1078.  
  1079.       Layer '0'
  1080.       (
  1081.         //Map = $Diffuse        
  1082.         //TexType = DSDTBump
  1083.         Map = WaterBump.dds        
  1084.         TexType = DSDTBump        
  1085.       )
  1086.  
  1087.       Layer '1'
  1088.       (        
  1089.         Map =  $ScreenTexMap
  1090.         TexColorOp = NoSet
  1091.       )    
  1092.       
  1093.       Layer '2'
  1094.       (
  1095.         Map = $Diffuse
  1096.         TexColorOp = NoSet        
  1097.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'        
  1098.         DepthWrite=0           
  1099.       )      
  1100.     )
  1101.   )
  1102.   
  1103.   // low spec shader
  1104.   HW 'Seq'
  1105.   (  
  1106.               
  1107.   ) 
  1108. )
  1109.  
  1110.  
  1111. // generic refractive shader, just simple refraction w/color
  1112. Shader 'TemplRefractive'
  1113. (
  1114.   Public
  1115.   (
  1116.     float 'Opacity' (1.0)        
  1117.     
  1118.     float 'RefractionScaleX' (1)
  1119.     float 'RefractionScaleY' (1)    
  1120.     float 'BumpScale' (0.01)    
  1121.             
  1122.     float 'MoveSpeedX' (0.0)
  1123.     float 'MoveSpeedY' (0.0)
  1124.     
  1125.     float 'ColorR' (1.0)
  1126.     float 'ColorG' (1.0)
  1127.     float 'ColorB' (1.0)
  1128.   )
  1129.   
  1130.   Params
  1131.   (
  1132.  
  1133.     Cull = Back
  1134.   )
  1135.  
  1136.   HW 'Seq'
  1137.   (    
  1138.     ShadeLayer
  1139.     (
  1140.       Array (Verts 3 FLOAT Vertex)
  1141.  
  1142.       CGVProgram  = CGVProgRefractive
  1143.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  1144.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.1' Comp 'time 0.1' Comp = 0.5) 
  1145.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  1146.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  1147.       CGVPParam ( Name = TexDetailScale User 'RefractionScaleX' User 'RefractionScaleY' Comp = 0 Comp = 0)
  1148.       CGVPParam ( Name = TexMovSpeed User 'MoveSpeedX' User 'MoveSpeedY' Comp = 0 Comp = 0)
  1149.  
  1150.       CGPShader   = CGRCRefractive
  1151.       CGPSParam ( Name = Matrix User 'BumpScale' Comp = 0 Comp = 0 User 'BumpScale' )
  1152.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'Opacity' )
  1153.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' Comp=1)
  1154.  
  1155.       Layer '0'
  1156.       (
  1157.         Map =  WaterBump.dds
  1158.         TexColorOp = NoSet
  1159.         TexType = DSDTBump
  1160.       )
  1161.  
  1162.       Layer '1'
  1163.       (
  1164.         Map =  $ScreenTexMap
  1165.         TexColorOp = NoSet
  1166.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  1167.         DepthWrite = 1
  1168.       )
  1169.     )
  1170.   )
  1171. )
  1172.  
  1173. // generic refractive shader, just simple refraction w/color + overlay 
  1174. Shader 'TemplRefractiveOverlayed'
  1175. (
  1176.   Public
  1177.   (
  1178.     float 'OverlayAmount' (0.5)        
  1179.     float 'Opacity' (1.0)        
  1180.     
  1181.     float 'RefractionScaleX' (1)
  1182.     float 'RefractionScaleY' (1)    
  1183.     float 'BumpScale' (0.01)    
  1184.             
  1185.     float 'MoveSpeedX' (0.0)
  1186.     float 'MoveSpeedY' (0.0)
  1187.     
  1188.     float 'ColorR' (1.0)
  1189.     float 'ColorG' (1.0)
  1190.     float 'ColorB' (1.0)
  1191.   )
  1192.  
  1193.   HW 'Seq'
  1194.   (      
  1195.     ShadeLayer
  1196.     (
  1197.       Array (Verts 3 FLOAT Vertex)
  1198.       Array (Texture0 2 FLOAT Texture0)   
  1199.     
  1200.       CGVProgram  = CGVProgRefractiveOverlay
  1201.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  1202.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.1' Comp 'time 0.1' Comp = 0.5) 
  1203.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  1204.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  1205.       CGVPParam ( Name = TexDetailScale User 'RefractionScaleX' User 'RefractionScaleY' Comp = 0 Comp = 0)
  1206.       CGVPParam ( Name = TexMovSpeed User 'MoveSpeedX' User 'MoveSpeedY' Comp = 0 Comp = 0)
  1207.  
  1208.       CGPShader   = CGRCRefractiveOverlay
  1209.       CGPSParam ( Name = Matrix User 'BumpScale' Comp = 0 Comp = 0 User 'BumpScale' )
  1210.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'Opacity' )
  1211.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User 'OverlayAmount')
  1212.  
  1213.       Layer '0'
  1214.       (
  1215.         Map =  $Diffuse
  1216.         TexColorOp = NoSet        
  1217.       )
  1218.       
  1219.       Layer '1'
  1220.       (
  1221.         Map =  WaterBump.dds
  1222.         TexColorOp = NoSet
  1223.         TexType = DSDTBump
  1224.       )
  1225.  
  1226.       Layer '2'
  1227.       (
  1228.         Map =  $ScreenTexMap
  1229.         TexColorOp = NoSet
  1230.         Blend 'SRC_ALPHA ONE_MINUS_SRC_ALPHA'
  1231.         DepthWrite = 1
  1232.       )      
  1233.     )
  1234.   )
  1235. )
  1236.  
  1237. // generic refractive shader, just simple refraction w/color + overlay 
  1238. Shader 'TemplHologram'
  1239. (
  1240.   Public
  1241.   (
  1242.     float 'OverlayAmount' (0.5)        
  1243.     float 'Opacity' (1.0)        
  1244.     
  1245.     float 'RefractionScaleX' (1)
  1246.     float 'RefractionScaleY' (1)    
  1247.     float 'BumpScale' (0.01)    
  1248.             
  1249.     float 'MoveSpeedX' (0.0)
  1250.     float 'MoveSpeedY' (0.0)
  1251.     
  1252.     float 'ColorR' (1.0)
  1253.     float 'ColorG' (1.0)
  1254.     float 'ColorB' (1.0)
  1255.   )
  1256.  
  1257.   Params
  1258.   (
  1259.     Cull = TwoSided
  1260.   )
  1261.  
  1262.  
  1263.   HW 'Seq'
  1264.   (      
  1265.     ShadeLayer
  1266.     (    
  1267.       CGVProgram  = CGVProgHologram
  1268.       CGVPParam ( Name = CameraPos Comp 'OSCameraPos pos 0' Comp 'OSCameraPos pos 1' Comp 'OSCameraPos pos 2')
  1269.       CGVPParam ( Name = TexShiftRipple Comp 'time 0.1' Comp 'time 0.1' Comp = 0.5) 
  1270.       CGVPParam ( Name = TexGenRipple0 Comp = 0.125 Comp = 0 Comp = 0 Comp = 0) 
  1271.       CGVPParam ( Name = TexGenRipple1 Comp = 0 Comp = 0.125 Comp = 0 Comp = 0) 
  1272.       CGVPParam ( Name = TexDetailScale User 'RefractionScaleX' User 'RefractionScaleY' Comp = 0 Comp = 0)
  1273.       CGVPParam ( Name = TexMovSpeed User 'MoveSpeedX' User 'MoveSpeedY' Comp = 0 Comp = 0)
  1274.  
  1275.       CGPShader   = CGRCHologram
  1276.       CGPSParam ( Name = Matrix User 'BumpScale' Comp = 0 Comp = 0 User 'BumpScale' )
  1277.       CGPSParam ( Name = Amount Comp = 1 Comp = 1 Comp = 1 User 'Opacity' )
  1278.       CGPSParam ( Name = RefrColor User 'ColorR'  User 'ColorG' User 'ColorB' User 'OverlayAmount')
  1279.  
  1280.       Layer '0'
  1281.       (
  1282.         Map =  defaults\PurpleGreenBright.dds
  1283.         TexColorOp = NoSet               
  1284.       )
  1285.  
  1286.       Layer '1'
  1287.       (
  1288.         Map =  $Diffuse
  1289.         TexColorOp = NoSet             
  1290.       )
  1291.       
  1292.       Layer '2'
  1293.       (
  1294.         Map =  defaults\heatnoise.jpg
  1295.         TexColorOp = NoSet                
  1296.         Blend 'ONE ONE'                   
  1297.       )            
  1298.     )
  1299.   )
  1300. )